Extensible Authentication Protocol
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
Extensible Authentication Protocol ou EAP est un protocole de communication réseau embarquant de multiples méthodes d'authentification, pouvant être utilisé sur les liaisons point à point (RFC 2284cite-ref-rfc-2284-a-t-d-1-0[1]), les réseaux filaires et les réseaux sans fil (RFC 3748cite-ref-rfc-3748-a-t-d-2-0[2], RFC 5247cite-ref-rfc-5247-a-t-d-3-0[3]) tels que les réseaux Wi-Fi.
Plusieurs méthodes d'authentification sont prédéfinies (MD5, OTP, Generic Token Card, etc.) mais il est possible d'en rajouter sans qu'il soit nécessaire de changer ou de créer un nouveau protocole réseau.
Contents
• Méthodes
• Sécurité
• Notes
• Articles
• Ouvrages
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Le protocole EAP
Le protocole EAP est :
• Un protocole de communication réseau : il est constitué d'un échange de trames dans un format spécifique à EAP pour réaliser l'authentification d'un partenairecite-ref-rfc2284-p2-4-0[RFC 1]
Le protocole EAP a été proposé en mars 1998 dans la RFC 2284cite-ref-rfc-2284-6-0[4] et proposé comme standard Internet auprès de l'IETF.
Il est conçu pour fournir un mécanisme d'authentification pour les liaisons PPP (couche 2 du modèle OSI) afin d'autoriser ou interdire l'établissement de la couche réseau (couche 3 du modèle OSI)cite-ref-rfc2284-p2-4-1[RFC 1]. Ce protocole ne s'appuie donc pas sur le protocole IP (couche 3 du modèle OSI)cite-ref-rfc3748-p5-7-0[RFC 3].
L'authenticator peut envoyer une requête au peer pour connaître son identité ou alors de déterminer son identité par l'interface de communication (Liaisons louées, Ligne dédiée, etc.)cite-ref-rfc2284-p2-4-3[RFC 1].
Cette identification est suivie d'une ou plusieurs requêtes envoyées par l'authenticator (obligatoire) avec un paramètre contenant la méthode d'authentification souhaitéecite-ref-rfc2284-p2-4-4[RFC 1] :
• Generic Token Card
• SIM
• etc.
Le peer doit répondre à ce challenge et aura en fonction du résultat, un message envoyé par l'authenticator contenant un codecite-ref-rfc2284-p6-7-10-0[RFC 4] :
• Code 3 : Succès (Établissement de la couche réseau)
• Code 4 : Échec (Impossible d'établir la couche réseau)
Cette authentification peut être réalisée par l'authenticator lui-même ou déléguée à un service tiers (authentication server)cite-ref-rfc2284-p2-3-11-0[RFC 5].
L'authentification peut être demandée par chaque extrémité[réf. nécessaire]
• Les réseaux filaires : Standard IEEE 802.1X
• Les réseaux sans fil : Standard IEEE 802.11i
Bien que le protocole EAP possède un mécanisme de suppression de requêtes dupliquées et de retransmission de requêtes, il reste tributaire de la couche de liaison de donnéescite-ref-rfc3748-p15-16-16-0[RFC 8]. Par conséquent, des erreurs sur cette couche peuvent entraîner des erreurs d'authentification EAPcite-ref-rfc3748-p16-17-0[RFC 9].
Le protocole EAP ne supporte pas nativement la fragmentation des paquets réseaucite-ref-rfc3748-p16-17-18-0[RFC 10] mais ce comportement peut être modifié avec certaines méthodes :
Quand le protocole EAP est utilisé en conjonction avec un point d'accès réseau compatible 802.1X (sans-fil ou filaire), certaines méthodes EAP permettent de négocier une clé PMK (Pair-wise Master Key) entre le client et le point d'accès. Cette clé PMK peut ensuite être utilisée pour chiffrer les sessions TKIP ou CCMP.
• EAP-TLS
• EAP-TTLS/MSCHAPv2
• PEAPv0/EAP-MS-CHAPv2
• PEAPv1/EAP-GTC
• EAP-SIM
Mais EAP ne se limite pas à ces méthodes d'authentification. On présente ci-dessous des informations sur les EAP les plus connus.
Méthodes
LEAP
Lightweight Extensible Authentication Protocol (LEAP) est une implémentation propriétaire de EAP conçue par Cisco Systems.
Cisco a fait beaucoup d'efforts pour promouvoir ce protocole. Il a permis à d'autres fabricants de réaliser des produits « LEAP Compatible » au travers du programme CCX (Cisco Certified Extensions). Ce protocole n'est pas présent nativement sous Windows. Il était connu pour être vulnérable aux attaques par dictionnaire comme EAP-MD5. Mais il ne l'est plus depuis la version ASLEAP (2003) de Joshua Wright. Cisco continue de soutenir que LEAP est une solution sécurisée si l'on utilise des mots de passe suffisamment complexes, mais il est fréquent que des mots de passe trop faibles soient utilisés en entreprise. De nouveaux protocoles comme EAP-TTLS ou PEAP ne rencontrent pas ce type de fragilité car ils créent un tunnel TLS pour sécuriser l'identification. De plus ces nouveaux protocoles étant plus ouverts, ils peuvent être utilisés sur des points d'accès de marque Cisco ou non.
EAP-TLS
Il offre une bonne sécurité. En effet il utilise deux certificats pour la création d'un tunnel sécurisé qui permet ensuite l'identification : un côté serveur et un côté client. Cela signifie que même si le mot de passe est découvert, il ne sera d'aucune utilité sans le certificat client. Bien que EAP-TLS fournisse une excellente sécurité, l'obligation de disposer d'un certificat client est peut-être son talon d'Achille. En effet lorsque l'on dispose d'un grand parc de machines, il peut s'avérer difficile et coûteux de gérer un certificat par machine. C'est pour se passer du certificat client que les protocoles PEAP et EAP-TTLS ont été créés.
TLS est considéré comme le successeur du standard SSL. Il utilise une Infrastructure à clés publiques pour sécuriser les communications d'identification entre les clients et le serveur RADIUS.
Il existe des implémentations client ou serveur pour : Microsoft, Cisco, Apple, Linux... EAP-TLS est présent nativement dans MAC OS 10.3 et supérieur, Windows 2000 SP4, Windows XP, Windows Mobile 2003 et supérieur, et Windows CE 4.2.
EAP-MD5
EAP-MD5 est un autre standard ouvert IETF, mais il offre un niveau de sécurité faible. La fonction de hachage MD5 utilisée est vulnérable aux attaques par dictionnaire, et elle ne supporte pas les clefs WEP dynamiques.
EAP-TTLS
EAP-Tunneled Transport Layer Security, a été codéveloppé par Funk Software et Certicom ; c'est également un standard ouvert IETF. Il est supporté sur de nombreuses plates-formes, et offre un très bon niveau de sécurité. Il utilise des certificats X-509 uniquement sur le serveur d'identification. Le certificat est optionnel du côté client.
Le défaut de EAP-TTLS par rapport à PEAP est de ne pas être présent nativement sur les systèmes Microsoft et Cisco. En revanche, il est légèrement plus sécurisé que PEAP car il ne diffuse pas le nom de l'utilisateur en clair.
EAP-FAST
EAP-Flexible Authentication via Secure Tunneling est une proposition de Cisco Systems pour pallier les faiblesses de LEAP. L'utilisation de certificats serveur est optionnelle dans EAP-FAST. Il utilise Protected Access Credential (PAC). EAP-FAST dispose de trois phases.
• Phase 0 : Elle est optionnelle et permet de renseigner dynamiquement PAC. PAC peut être complété manuellement, auquel cas il n'y aura pas de phase 0.
• Phase 1 : Le client et le serveur AAA (Authentication Authorization Accounting) utilisent PAC pour établir un tunnel TLS.
• Phase 2 : Le client envoie les informations utilisateur à travers le tunnel.
EAP-FAST est défini dans un brouillon Internet IETF « draft-com-winget-eap-fast-03 ».
Actuellement il est proposé comme RFC 4851cite-ref-rfc-4851-20-0[6].
EAP-SIM
EAP-SIM est une méthode EAP pour les clients des réseaux Wi-Fi et des réseaux de téléphonie mobile GSM, UMTS et LTE. Il est utilisé pour l'identification et la distribution de clefs au travers des réseaux ; SIM signifie « Subscriber Identity Module ». EAP-SIM est décrit dans la RFC 4186cite-ref-rfc-4186-21-0[7].
Free Mobile a été le premier opérateur français à mettre en service ce protocole d'authentification en avril 2012 pour ses clients détenteurs du forfait illimitécite-ref-22[8]. Cela permet aux abonnés d'accéder au réseau Free Wifi. SFR a activé mi-juin 2012, sur l'ensemble de son réseau, ce service déployé depuis mars 2012, d'abord en phase d’expérimentation limitée cite-ref-23[9], sous le nom « Auto-connect ».
EAP-AKA
EAP-AKA (Authentication and Key Agreement) est une méthode EAP pour les clients des réseaux de téléphonie mobile de 3e génération (UMTS et CDMA2000). Elle est décrite dans la RFC 4187cite-ref-rfc-4187-24-0[10].
Contrairement à EAP-SIM, EAP-AKA permet de réaliser une authentification mutuelle de l'équipement utilisateur et du réseau. La longueur de la clé générée par accord mutuel est plus longue (128 bits) qu'avec EAP-SIM (64 bits)cite-ref-25[11].
Ce protocole est principalement employé dans les cadres suivantscite-ref-26[12]:
• Authentification lors de l'attachement à un réseau de téléphonie mobile de 3e génération.
• Réutilisation des éléments d'authentification du réseau mobile lors de l'attachement à un réseau sans fil [Wifi] qui appartient à l'opérateur.
EAP-AKA'
Encapsulation
PEAP
Protected Extensible Authentication Protocol, Protected EAP, ou plus simplement PEAP, est une méthode de transfert sécurisée d'informations d'identification, pour les réseaux filaires et sans fil. Ce protocole a été développé conjointement par Microsoft, RSA Security et Cisco Systems. C’est un standard ouvert de l'IETF (Internet Engineering Task Force). PEAP n'est pas une méthode de chiffrement, c'est une procédure pour identifier un client sur un réseau.
PEAP est très similaire à une autre méthode EAP : EAP-TTLS. Protected EAP a été créé pour contrer EAP-TTLS qui était jusque-là la seule méthode EAP à utiliser une Infrastructure à clés publiques (Public Key Infrastructure, PKI) que du côté serveur, pour la création d'un tunnel TLS protégeant l'identification. Dans ces deux standards, l'utilisation d'une clef publique côté client est optionnelle.
• PEAPv0/EAP-MS-CHAPv2
• PEAPv1/EAP-GTC
PEAP se déroule en deux phases :
1. La phase 1 permet l'identification du serveur grâce à une Infrastructure à clés publiques. Une fois le serveur identifié, il y a la création d'un tunnel sécurisé qui permettra à la phase 2 d'être chiffrée.
2. La phase 2 permet l'identification du client au travers du tunnel chiffré.
Radius
Diameter
Sécurité
Notes et références
Notes
cite-note-8note 1. ↑ que l'on pourrait traduire par : Pair.
cite-note-9note 2. ↑ que l'on pourrait traduire par : Authentificateur .
cite-note-14note 3. ↑ Extensible Authentication Protocol Over LAN
Références
RFC
cite-note-rfc2284-p2-4RFC 1. (en) RFC 2284 p. 2
cite-note-rfc3748-p2-5RFC 2. ↑ (en) RFC 3748 p. 2
cite-note-rfc3748-p5-7RFC 3. ↑ (en) RFC 3748 p. 5
cite-note-rfc2284-p6-7-10RFC 4. ↑ (en) RFC 2284 p. 6-7
cite-note-rfc2284-p2-3-11RFC 5. ↑ (en) RFC 2284 p. 2-3
cite-note-rfc3748-p3-13RFC 6. ↑ (en) RFC 3748 p. 3
cite-note-rfc3748-p54-15RFC 7. ↑ (en) RFC 3748 p. 54
cite-note-rfc3748-p15-16-16RFC 8. ↑ (en) RFC 3748 p. 15-16
cite-note-rfc3748-p16-17RFC 9. ↑ (en) RFC 3748 p. 16
cite-note-rfc3748-p16-17-18RFC 10. ↑ (en) RFC 3748 p. 16-17
cite-note-rfc5216-p14-19RFC 11. ↑ (en) RFC 5216 p. 14
Autres
cite-note-rfc-2284-a-t-d-11. ↑ (en) L. Blunk et J. Vollbrecht, « PPP Extensible Authentication Protocol (EAP) », Request for comments no 2284, mars 1998
cite-note-rfc-3748-a-t-d-22. ↑ (en) B. Aboba, L. Blunk, J. Vollbrecht, J. Carlson, H. Levkowetz, Ed., « Extensible Authentication Protocol (EAP) », Request for comments no 3748, juin 2004
cite-note-rfc-5247-a-t-d-33. ↑ (en) B. Aboba, D. Simon, P. Eronen, « Extensible Authentication Protocol (EAP) Key Management Framework », Request for comments no 5247, août 2008
cite-note-rfc-2284-64. (en) Request for comments no 2284
cite-note-rfc-3748-125. ↑ (en) Request for comments no 3748
cite-note-rfc-4851-206. ↑ (en) Request for comments no 4851
cite-note-rfc-4186-217. ↑ (en) Request for comments no 4186
cite-note-228. ↑ « Article d'annonce de l'activation de l'EAP-SIM chez Free » (consulté le 19 avril 2012)
cite-note-239. ↑ « EAP-SIM : SFR était là avant Free Mobile, et veut le faire savoir ! » (consulté le 19 avril 2012)
cite-note-rfc-4187-2410. ↑ (en) Request for comments no 4187
cite-note-2511. ↑ « Authentication, Authorization, Accounting (AAA) » [archive du 6 septembre 2008] (consulté le 16 mai 2013), diapositives 29 à 32. Consulté le 16 mai 2013.
cite-note-2612. ↑ RFC 4187, §1: Introduction and Motivation. Consulté le 16 mai 2013.
Bibliographie
Articles
Ouvrages
Voir aussi
Articles connexes
Liens externes
• (en) RFC 2284 : (Obsolète) PPP Extensible Authentication Protocol (EAP)
• (en) RFC 3748 : Extensible Authentication Protocol (EAP)
• (en) RFC 3579 : RADIUS (Remote Authentication Dial In User Service) Support For Extensible Authentication Protocol (EAP)
• (en) RFC 4017 : EAP Method Requirements for Wireless LANs
• freeradiuseapprotocol(en) « protocol/EAP », sur freeradius.org (consulté le 25 mars 2015)
• (en) radius802-1xwirelesslan« Configure RADIUS for secure 802.1x wireless LAN », sur techrepublic.com
• (en) selfsignradiuspeap-ttls« How to self-sign a RADIUS server for secure PEAP or EAP-TTLS authentication », sur techrepublic.com
• (en) microsofttechneteap« Extensible Authentication Protocol », sur technet.microsoft.com
• (en) wire1x« WIRE1x », sur wire.cs.nctu.edu.tw
• (en) ietfeapmethod« IETF EAP Method Update (emu) Working Group », sur ietf.org
• Portail de la cryptologie
• Portail de la sécurité des systèmes d'information
• Portail des télécommunications